home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-09-10 | 2.3 KB | 66 lines | [TEXT/R*ch] |
- // THINK Power Extensions.h - Written by Stefan Arentz, August 1993
-
- #pragma once
-
- // ———————————————— constants...
-
- #define kTPExentsionType 'TpXt'
-
-
- // ———————————————— structures...
-
- typedef struct {
- // CallbackBlock version...
- short version;
-
- // Version 1 callbacks...
- pascal Handle (*GetWindowContents)(WindowPtr theWindow);
- pascal void (*GetSelection)(long *selStart, long *selEnd, long *firstChar);
- pascal void (*SetSelection)(long selStart, long selEnd, long firstChar);
- pascal void (*GetDocInfo)(WindowPtr theWindow, Str255 fileName, short *vRefNum, long *dirID);
- pascal long (*GetModDate)(WindowPtr theWindow);
- pascal Handle (*Copy)(void);
- pascal Handle (*Paste)(Handle theText);
-
- // Version 2 callbacks...
-
- /* Text-Editing stuff */
- pascal long (*GetLastLine)(void);
- pascal long (*GetLineNumber)(long selection);
- pascal long (*GetLineStart)(long selection);
- pascal long (*GetLineEnd)(long selection);
- pascal long (*GetLinePos)(long line);
-
- pascal void (*Insert)(char *text, long len);
- pascal void (*Delete)(void);
-
- /* Getting and Setting window text */
- pascal void (*SetWindowContents)(WindowPtr w, Handle h);
- pascal void (*ContentsChanged)(WindowPtr w);
-
- /* Reading file text */
- pascal Handle (*GetFileText)(short vRefNum, long dirID, Str255 fName, Boolean *canDispose);
-
- /* Direct user-interface calls */
- pascal Boolean (*GetFolder)(Str255 prompt, short *vRefNum, long *dirID);
- pascal Boolean (*OpenSeveral)(Boolean sort, short *file_count, StandardFileReply ***files);
-
- pascal DialogPtr (*CenterDialog)(short dialogID);
- pascal Boolean (*StandardFilter)(DialogPtr d, EventRecord *event, short *item);
- pascal void (*FrameDialogItem)(DialogPtr d, short item);
-
- pascal WindowPtr (*NewDocument)(void);
- pascal WindowPtr (*OpenDocument)(void);
-
- /* Utility Routines */
- pascal Handle (*Allocate)(long size, Boolean clear);
- pascal long (*FindPattern)(char *text, long text_len, long text_offset, char *pat, long pat_len, Boolean case_sensitive);
-
- pascal void (*ReportOSError)(short code);
-
- /* Preference routines */
- pascal void (*GetPreference)(ResType prefType, short req_len, void *buffer, short *act_len);
- pascal void (*SetPreference)(ResType prefType, short req_len, void *buffer, short *act_len);
-
- } ExternalCallbackBlock;
-